package com.nari.ncps.screen.mapper.dryport;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.nari.ncps.screen.entity.dryport.DryportProdoperGoodsSend;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 货物发送情况表 Mapper 接口
 * </p>
 *
 * @author xuesong
 * @since 2025-09-25
 */
public interface DryportProdoperGoodsSendMapper extends BaseMapper<DryportProdoperGoodsSend> {

    /**
     * 根据年份查询货物发送月度统计数据
     * @param year 年份
     * @return 月度统计数据列表
     */
    List<DryportProdoperGoodsSend> getMonthlyStatsByYear(@Param("year") Integer year);

    /**
     * 获取最新货物发送统计数据（最近12个月）
     * @return 最新月度统计数据列表
     */
    List<DryportProdoperGoodsSend> getLatestMonthlyStats();

    /**
     * 根据年月查询货物发送统计数据
     * @param year 年份
     * @param month 月份
     * @return 统计数据
     */
    List<DryportProdoperGoodsSend> getStatsByYearAndMonth(@Param("year") Integer year, @Param("month") Integer month);

    /**
     * 根据日期查询货物发送统计数据
     * @param year 年份
     * @param month 月份
     * @param day 日期
     * @return 统计数据
     */
    DryportProdoperGoodsSend getStatsByDate(@Param("year") Integer year, @Param("month") Integer month, @Param("day") Integer day);
}
